package com.chc.web.user.handler.user;

import com.chc.enums.UserTypeEnum;
import com.chc.utils.Msg;
import com.chc.web.user.entity.ChangePassword;
import com.chc.web.user.entity.LoginParm;
import com.chc.web.user.entity.User;
import org.springframework.security.core.Authentication;

/**
 * @Author: chc
 * @Date: 2025/01/15/15:01
 * @Description: 用户类型（设计模式）
 */
public interface LoginTypeHandler {


    UserTypeEnum getUserType();

    Msg menu(String username);

    /**
     * 重置密码操作
     * @return
     */
    Msg resetPwd(ChangePassword user);

    /**
     * 用户信息
     * @param user
     * @return
     */
    Msg Info(User user);

    Msg login(LoginParm parm, Authentication authenticate);

}
